<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class ProdutoModel extends CI_Model {

    function __construct(){
        parent::__construct();
    }

    public function getProdutoFornecedor($id, $tipo = ""){
        $this->db->from("produto");
        $this->db->where("idFornecedor", $id);
        if($tipo == "") $this->db->where("tipo","normal");
        elseif($tipo == "todos");
        else $this->db->where("tipo", $tipo);
        $query = $this->db->get();
        if($query->num_rows() > 0 )
            return $query;
        else
            return false;
    }
    public function getProdutoFornecedorCateg($id, $idCategoria, $tipo = ""){
        $this->db->from("produto");
        $this->db->where("idFornecedor",$id);
        $this->db->where("idCategoria",$idCategoria);
        $this->db->where("idFornecedor",$id);
        if($tipo == "") $this->db->where("tipo","normal");
        elseif($tipo == "todos");
        else $this->db->where("tipo", $tipo);
        $query = $this->db->get();
        if($query->num_rows() > 0 )
            return $query;
        else
            return false;
    }

    public function getProdutoFornecedorCategAutorizado($idFornecedor, $idCategoria, $tipo = ""){
        $this->db->from("produto");
        $this->db->where("idFornecedor",$idFornecedor);
        $this->db->where("idCategoria",$idCategoria);
        $this->db->where("autorizado",true);
        if($tipo == "") $this->db->where("tipo","normal");
        elseif($tipo == "todos");
        else $this->db->where("tipo", $tipo);
        $query = $this->db->get();
        if($query->num_rows() > 0 )
            return $query;
        else
            return false;
    }

    public function getProdutoFornecedorAutorizado($id, $tipo = ""){
        $this->db->from("produto");
        $this->db->where("idFornecedor",$id);
        $this->db->where("autorizado",true);
        if($tipo == "") $this->db->where("tipo","normal");
        elseif($tipo == "todos" || $tipo == 0);
        else $this->db->where("tipo",$tipo);
        $this->db->order_by("idCategoria,nome");

        $query = $this->db->get();
        if($query->num_rows() > 0 )
            return $query;
        else
            return false;
    }

    public function buscar($str, $tipo = ""){
        $this->db->from("produto");
        $this->db->like("nome", $str);
        $this->db->where("autorizado", true);
        if($tipo == "") $this->db->where("tipo","normal");
        elseif($tipo == "todos" || $tipo == 0);
        else $this->db->where("tipo",$tipo);
        $query = $this->db->get();
        if($query->num_rows() > 0 )
            return $query;
        else
            return false;
    }

    public function getProdutoCategoria($id, $tipo = ""){
        $this->db->from("produto");
        $this->db->where("idCategoria",$id);
        if($tipo == "") $this->db->where("tipo","normal");
        elseif($tipo == "todos" || $tipo == 0);
        else $this->db->where("tipo",$tipo);
        $query = $this->db->get();
        if($query->num_rows() > 0 )
            return $query;
        else
            return false;
    }
	
    public function getProdutoCategoriaAutorizado($id, $tipo = ""){
        $this->db->from("produto");
        $this->db->where("idCategoria",$id);
        $this->db->where("autorizado",true);
        if($tipo == "") $this->db->where("tipo","normal");
        elseif($tipo == "todos" || $tipo == 0);
        else $this->db->where("tipo",$tipo);
        $query = $this->db->get();
        if($query->num_rows() > 0 )
            return $query;
        else
            return false;
    }

    public function editar($id, $dados){
        $this->db->where("idProduto", $id);
        $this->db->update("produto", $dados);
    }

    public function update($id, $dados){
        $this->db->where("idProduto", $id);
        $this->db->update("produto", $dados);
    }

    public function delete($id){
        $this->db->where("idProduto", $id);
        $this->db->delete("produto");
    }

    public function inserir($vetor){
        $this->db->insert("produto",$vetor);
        return $this->db->insert_id();

    }

    public function listar(){
        $query = $this->db->get("produto");
        if( $query->num_rows() > 0 ) :
            return $query;
        else :
            return false;
        endif;
    }

    public function listarDestaques(){
        $this->db->where("destaque", true);
        $query = $this->db->get("produto");
        if( $query->num_rows() > 0 ) :
            return $query;
        else :
            return false;
        endif;
    }

    public function getProduto($id){
        $this->db->from("produto");
        $this->db->where("idProduto", $id);
        $query = $this->db->get();

        if( $query->num_rows() > 0 ) :
            return $query->row(0);
        else :
            return false;
        endif;
    }

    public function getProdutoIntencao($id){
        $this->db->from("produto");
        $this->db->where("idProduto", $id);
        $this->db->where("autorizado", true);
        $this->db->where("tipo","intencao");
        $query = $this->db->get();

        if( $query->num_rows() > 0 ) :
            return $query->row(0);
        else :
            return false;
        endif;
    }

    public function getProdutoAutorizado($id){
        $this->db->from("produto");
        $this->db->where("idProduto", $id);
        $this->db->where("autorizado", true);
        $this->db->where("intencao_codigo", null);

        $query = $this->db->get();

        if( $query->num_rows() > 0 ) :
            return $query->row(0);
        else :
            return false;
        endif;
    }

}

/* Fim do arquivo ProdutoModel.php */
/* Location: ./application/models/ProdutoModel.php */
